mexif_tagdb_t mexif_EXIF_db[_MEXIF_TAGID_EXIF_Count] = 
{
    {   256, L"ImageWidth", L"Image width" }, // SHORT or LONG 1
    {   257, L"ImageHeight", L"Image height" }, // SHORT or LONG 1
    {   258, L"BitsPerSample", L"Number of bits per component" }, // SHORT 3
    {   259, L"Compression", L"Compression scheme" }, // SHORT 1
    {   262, L"PhotometricInterpretation", L"Pixel composition" }, // SHORT 1
    {   270, L"ImageDescription", L"Image title" }, // ASCII Any
    {   271, L"Make", L"Image input equipment manufacturer" }, // ASCII Any
    {   272, L"Model", L"Image input equipment model" }, // ASCII Any
    {   273, L"StripOffsets", L"Image data location" }, // SHORT or LONG *S
    {   274, L"Orientation", L"Orientation of image" }, // SHORT 1
    {   277, L"SamplesPerPixel", L"Number of components" }, // SHORT 1
    {   278, L"RowsPerStrip", L"Number of rows per strip" }, // SHORT or LONG 1
    {   279, L"StripByteCounts", L"Bytes per compressed strip" }, // SHORT or LONG *S
    {   282, L"XResolution", L"Image resolution in width direction" }, // RATIONAL 1
    {   283, L"YResolution", L"Image resolution in height direction" }, // RATIONAL 1
    {   284, L"PlanarConfiguration", L"Image data arrangement" }, // SHORT 1
    {   296, L"ResolutionUnit", L"Unit of X and Y resolution" }, // SHORT 1
    {   301, L"TransferFunction", L"Transfer function" }, // SHORT 3 * 256
    {   305, L"Software", L"Software used" }, // ASCII Any
    {   306, L"DateTime", L"File change date and time" }, // ASCII 20
    {   315, L"Artist", L"Person who created the image" }, // ASCII Any
    {   318, L"WhitePoint", L"White point chromaticity" }, // RATIONAL 2
    {   319, L"PrimaryChromaticities", L"Chromaticities of primaries" }, // RATIONAL 6
    {   513, L"JPEGInterchangeFormat", L"Offset to JPEG SOI" }, // LONG 1
    {   514, L"JPEGInterchangeFormatLength", L"Bytes of JPEG data" }, // LONG 1
    {   529, L"YCbCrCoefficients", L"Color space transformation matrix coefficients" }, // RATIONAL 3
    {   530, L"YCbCrSubSampling", L"Subsampling ratio of Y to C" }, // SHORT 2
    {   531, L"YCbCrPositioning", L"Y and C positioning" }, // SHORT 1
    {   532, L"ReferenceBlackWhite", L"Pair of black and white reference values" }, // RATIONAL 6
    { 33432, L"Copyright", L"Copyright holder" }, // ASCII Any
    { 33434, L"ExposureTime", L"Exposure time" }, // RATIONAL 1
    { 33437, L"FNumber", L"F number" }, // RATIONAL 1
    { 34665, L"ExifIFDPointer", L"Exif IFD Pointer" }, // LONG 1
    { 34850, L"ExposureProgram", L"Exposure program" }, // SHORT 1
    { 34852, L"SpectralSensitivity", L"Spectral sensitivity" }, // ASCII Any
    { 34853, L"GpsIFDPointer", L"GPS IFD Pointer" }, // LONG 1
    { 34855, L"ISOSpeedRatings", L"ISO speed rating" }, // SHORT Any
    { 34856, L"OECF", L"Optoelectric conversion factor" }, // UNDEFINED Any
    { 36864, L"ExifVersion", L"Exif version" }, // UNDEFINED 4
    { 36867, L"DateTimeOriginal", L"Date and time of original data generation" }, // ASCII 20
    { 36868, L"DateTimeDigitized", L"Date and time of digital data generation" }, // ASCII 20
    { 37121, L"ComponentsConfiguration", L"Meaning of each component" }, // UNDEFINED 4
    { 37122, L"CompressedBitsPerPixel", L"Image compression mode" }, // RATIONAL 1
    { 37377, L"ShutterSpeedValue", L"Shutter speed" }, // SRATIONAL 1
    { 37378, L"ApertureValue", L"Aperture" }, // RATIONAL 1
    { 37379, L"BrightnessValue", L"Brightness" }, // SRATIONAL 1
    { 37380, L"ExposureBiasValue", L"Exposure bias" }, // SRATIONAL 1
    { 37381, L"MaxApertureValue", L"Maximum lens aperture" }, // RATIONAL 1
    { 37382, L"SubjectDistance", L"Subject distance" }, // RATIONAL 1
    { 37383, L"MeteringMode", L"Metering mode" }, // SHORT 1
    { 37384, L"LightSource", L"Light source" }, // SHORT 1
    { 37385, L"Flash", L"Flash" }, // SHORT 1
    { 37386, L"FocalLength", L"Lens focal length" }, // RATIONAL 1
    { 37396, L"SubjectArea", L"Subject area" }, // SHORT 2 or 3 or 4
    { 37500, L"MakerNote", L"Manufacturer notes" }, // UNDEFINED Any
    { 37510, L"UserComment", L"User comments" }, // UNDEFINED Any
    { 37520, L"SubSecTime", L"DateTime subseconds" }, // ASCII Any
    { 37521, L"SubSecTimeOriginal", L"DateTimeOriginal subseconds" }, // ASCII Any
    { 37522, L"SubSecTimeDigitized", L"DateTimeDigitized subseconds" }, // ASCII Any
    { 40960, L"FlashpixVersion", L"Supported Flashpix version" }, // UNDEFINED 4
    { 40961, L"ColorSpace", L"Color space information" }, // SHORT 1
    { 40962, L"PixelXDimension", L"Valid image width" }, // SHORT or LONG 1
    { 40963, L"PixelYDimension", L"Valid image height" }, // SHORT or LONG 1
    { 40964, L"RelatedSoundFile", L"Related audio file" }, // ASCII 13
    { 40965, L"InteropIFDPointer", L"Interoperability IFD Pointer" }, // LONG 1
    { 41483, L"FlashEnergy", L"Flash energy" }, // RATIONAL 1
    { 41484, L"SpatialFrequencyResponse", L"Spatial frequency response" }, // UNDEFINED Any
    { 41486, L"FocalPlaneXResolution", L"Focal plane X resolution" }, // RATIONAL 1
    { 41487, L"FocalPlaneYResolution", L"Focal plane Y resolution" }, // RATIONAL 1
    { 41488, L"FocalPlaneResolutionUnit", L"Focal plane resolution unit" }, // SHORT 1
    { 41492, L"SubjectLocation", L"Subject location" }, // SHORT 2
    { 41493, L"ExposureIndex", L"Exposure index" }, // RATIONAL 1
    { 41495, L"SensingMethod", L"Sensing method" }, // SHORT 1
    { 41728, L"FileSource", L"File source" }, // UNDEFINED 1
    { 41729, L"SceneType", L"Scene type" }, // UNDEFINED 1
    { 41730, L"CFAPattern", L"CFA pattern" }, // UNDEFINED Any
    { 41985, L"CustomRendered", L"Custom image processing" }, // SHORT 1
    { 41986, L"ExposureMode", L"Exposure mode" }, // SHORT 1
    { 41987, L"WhiteBalance", L"White balance" }, // SHORT 1
    { 41988, L"DigitalZoomRatio", L"Digital zoom ratio" }, // RATIONAL 1
    { 41989, L"FocalLengthIn35mmFilm", L"Focal length in 35 mm film" }, // SHORT 1
    { 41990, L"SceneCaptureType", L"Scene capture type" }, // SHORT 1
    { 41991, L"GainControl", L"Gain control" }, // RATIONAL 1
    { 41992, L"Contrast", L"Contrast" }, // SHORT 1
    { 41993, L"Saturation", L"Saturation" }, // SHORT 1
    { 41994, L"Sharpness", L"Sharpness" }, // SHORT 1
    { 41995, L"DeviceSettingDescription", L"Device settings description" }, // UNDEFINED Any
    { 41996, L"SubjectDistanceRange", L"Subject distance range" }, // SHORT 1
    { 42016, L"ImageUniqueID", L"Unique image ID" }, // ASCII 33
};



const mexif_tagdb_t* MEXIF_API mexif_EXIF_search( unsigned int tag )
{
    switch( tag )
    {
    case MEXIF_TAGID_EXIF_ImageWidth              : return mexif_EXIF_db +  0;
    case MEXIF_TAGID_EXIF_ImageHeight             : return mexif_EXIF_db +  1;
    case MEXIF_TAGID_EXIF_BitsPerSample           : return mexif_EXIF_db +  2;
    case MEXIF_TAGID_EXIF_Compression             : return mexif_EXIF_db +  3;
    case MEXIF_TAGID_EXIF_PhotometricInterpretation : return mexif_EXIF_db +  4;
    case MEXIF_TAGID_EXIF_ImageDescription        : return mexif_EXIF_db +  5;
    case MEXIF_TAGID_EXIF_Make                    : return mexif_EXIF_db +  6;
    case MEXIF_TAGID_EXIF_Model                   : return mexif_EXIF_db +  7;
    case MEXIF_TAGID_EXIF_StripOffsets            : return mexif_EXIF_db +  8;
    case MEXIF_TAGID_EXIF_Orientation             : return mexif_EXIF_db +  9;
    case MEXIF_TAGID_EXIF_SamplesPerPixel         : return mexif_EXIF_db + 10;
    case MEXIF_TAGID_EXIF_RowsPerStrip            : return mexif_EXIF_db + 11;
    case MEXIF_TAGID_EXIF_StripByteCounts         : return mexif_EXIF_db + 12;
    case MEXIF_TAGID_EXIF_XResolution             : return mexif_EXIF_db + 13;
    case MEXIF_TAGID_EXIF_YResolution             : return mexif_EXIF_db + 14;
    case MEXIF_TAGID_EXIF_PlanarConfiguration     : return mexif_EXIF_db + 15;
    case MEXIF_TAGID_EXIF_ResolutionUnit          : return mexif_EXIF_db + 16;
    case MEXIF_TAGID_EXIF_TransferFunction        : return mexif_EXIF_db + 17;
    case MEXIF_TAGID_EXIF_Software                : return mexif_EXIF_db + 18;
    case MEXIF_TAGID_EXIF_DateTime                : return mexif_EXIF_db + 19;
    case MEXIF_TAGID_EXIF_Artist                  : return mexif_EXIF_db + 20;
    case MEXIF_TAGID_EXIF_WhitePoint              : return mexif_EXIF_db + 21;
    case MEXIF_TAGID_EXIF_PrimaryChromaticities   : return mexif_EXIF_db + 22;
    case MEXIF_TAGID_EXIF_JPEGInterchangeFormat   : return mexif_EXIF_db + 23;
    case MEXIF_TAGID_EXIF_JPEGInterchangeFormatLength : return mexif_EXIF_db + 24;
    case MEXIF_TAGID_EXIF_YCbCrCoefficients       : return mexif_EXIF_db + 25;
    case MEXIF_TAGID_EXIF_YCbCrSubSampling        : return mexif_EXIF_db + 26;
    case MEXIF_TAGID_EXIF_YCbCrPositioning        : return mexif_EXIF_db + 27;
    case MEXIF_TAGID_EXIF_ReferenceBlackWhite     : return mexif_EXIF_db + 28;
    case MEXIF_TAGID_EXIF_Copyright               : return mexif_EXIF_db + 29;
    case MEXIF_TAGID_EXIF_ExposureTime            : return mexif_EXIF_db + 30;
    case MEXIF_TAGID_EXIF_FNumber                 : return mexif_EXIF_db + 31;
    case MEXIF_TAGID_EXIF_ExifIFDPointer          : return mexif_EXIF_db + 32;
    case MEXIF_TAGID_EXIF_ExposureProgram         : return mexif_EXIF_db + 33;
    case MEXIF_TAGID_EXIF_SpectralSensitivity     : return mexif_EXIF_db + 34;
    case MEXIF_TAGID_EXIF_GpsIFDPointer           : return mexif_EXIF_db + 35;
    case MEXIF_TAGID_EXIF_ISOSpeedRatings         : return mexif_EXIF_db + 36;
    case MEXIF_TAGID_EXIF_OECF                    : return mexif_EXIF_db + 37;
    case MEXIF_TAGID_EXIF_ExifVersion             : return mexif_EXIF_db + 38;
    case MEXIF_TAGID_EXIF_DateTimeOriginal        : return mexif_EXIF_db + 39;
    case MEXIF_TAGID_EXIF_DateTimeDigitized       : return mexif_EXIF_db + 40;
    case MEXIF_TAGID_EXIF_ComponentsConfiguration : return mexif_EXIF_db + 41;
    case MEXIF_TAGID_EXIF_CompressedBitsPerPixel  : return mexif_EXIF_db + 42;
    case MEXIF_TAGID_EXIF_ShutterSpeedValue       : return mexif_EXIF_db + 43;
    case MEXIF_TAGID_EXIF_ApertureValue           : return mexif_EXIF_db + 44;
    case MEXIF_TAGID_EXIF_BrightnessValue         : return mexif_EXIF_db + 45;
    case MEXIF_TAGID_EXIF_ExposureBiasValue       : return mexif_EXIF_db + 46;
    case MEXIF_TAGID_EXIF_MaxApertureValue        : return mexif_EXIF_db + 47;
    case MEXIF_TAGID_EXIF_SubjectDistance         : return mexif_EXIF_db + 48;
    case MEXIF_TAGID_EXIF_MeteringMode            : return mexif_EXIF_db + 49;
    case MEXIF_TAGID_EXIF_LightSource             : return mexif_EXIF_db + 50;
    case MEXIF_TAGID_EXIF_Flash                   : return mexif_EXIF_db + 51;
    case MEXIF_TAGID_EXIF_FocalLength             : return mexif_EXIF_db + 52;
    case MEXIF_TAGID_EXIF_SubjectArea             : return mexif_EXIF_db + 53;
    case MEXIF_TAGID_EXIF_MakerNote               : return mexif_EXIF_db + 54;
    case MEXIF_TAGID_EXIF_UserComment             : return mexif_EXIF_db + 55;
    case MEXIF_TAGID_EXIF_SubSecTime              : return mexif_EXIF_db + 56;
    case MEXIF_TAGID_EXIF_SubSecTimeOriginal      : return mexif_EXIF_db + 57;
    case MEXIF_TAGID_EXIF_SubSecTimeDigitized     : return mexif_EXIF_db + 58;
    case MEXIF_TAGID_EXIF_FlashpixVersion         : return mexif_EXIF_db + 59;
    case MEXIF_TAGID_EXIF_ColorSpace              : return mexif_EXIF_db + 60;
    case MEXIF_TAGID_EXIF_PixelXDimension         : return mexif_EXIF_db + 61;
    case MEXIF_TAGID_EXIF_PixelYDimension         : return mexif_EXIF_db + 62;
    case MEXIF_TAGID_EXIF_RelatedSoundFile        : return mexif_EXIF_db + 63;
    case MEXIF_TAGID_EXIF_InteropIFDPointer       : return mexif_EXIF_db + 64;
    case MEXIF_TAGID_EXIF_FlashEnergy             : return mexif_EXIF_db + 65;
    case MEXIF_TAGID_EXIF_SpatialFrequencyResponse : return mexif_EXIF_db + 66;
    case MEXIF_TAGID_EXIF_FocalPlaneXResolution   : return mexif_EXIF_db + 67;
    case MEXIF_TAGID_EXIF_FocalPlaneYResolution   : return mexif_EXIF_db + 68;
    case MEXIF_TAGID_EXIF_FocalPlaneResolutionUnit : return mexif_EXIF_db + 69;
    case MEXIF_TAGID_EXIF_SubjectLocation         : return mexif_EXIF_db + 70;
    case MEXIF_TAGID_EXIF_ExposureIndex           : return mexif_EXIF_db + 71;
    case MEXIF_TAGID_EXIF_SensingMethod           : return mexif_EXIF_db + 72;
    case MEXIF_TAGID_EXIF_FileSource              : return mexif_EXIF_db + 73;
    case MEXIF_TAGID_EXIF_SceneType               : return mexif_EXIF_db + 74;
    case MEXIF_TAGID_EXIF_CFAPattern              : return mexif_EXIF_db + 75;
    case MEXIF_TAGID_EXIF_CustomRendered          : return mexif_EXIF_db + 76;
    case MEXIF_TAGID_EXIF_ExposureMode            : return mexif_EXIF_db + 77;
    case MEXIF_TAGID_EXIF_WhiteBalance            : return mexif_EXIF_db + 78;
    case MEXIF_TAGID_EXIF_DigitalZoomRatio        : return mexif_EXIF_db + 79;
    case MEXIF_TAGID_EXIF_FocalLengthIn35mmFilm   : return mexif_EXIF_db + 80;
    case MEXIF_TAGID_EXIF_SceneCaptureType        : return mexif_EXIF_db + 81;
    case MEXIF_TAGID_EXIF_GainControl             : return mexif_EXIF_db + 82;
    case MEXIF_TAGID_EXIF_Contrast                : return mexif_EXIF_db + 83;
    case MEXIF_TAGID_EXIF_Saturation              : return mexif_EXIF_db + 84;
    case MEXIF_TAGID_EXIF_Sharpness               : return mexif_EXIF_db + 85;
    case MEXIF_TAGID_EXIF_DeviceSettingDescription : return mexif_EXIF_db + 86;
    case MEXIF_TAGID_EXIF_SubjectDistanceRange    : return mexif_EXIF_db + 87;
    case MEXIF_TAGID_EXIF_ImageUniqueID           : return mexif_EXIF_db + 88;
    }
    return 0;
};
